Xbasic

Extension::JsonJsonObjFlattenAndForceObjArray Method

Syntax

.JsonObjFlattenAndForceObjArray as c (json as C [, separator as C [, fieldName as C]])

Arguments

jsonCharacter

Json To Process

separatorCharacter

Separator when flattening fields.

fieldNameCharacter

Field separator when Flatting objects.

Description

Handles both flattening of objects and wrapping of non object array entries at the same time.

Discussion

Perform a JsonObjectFlatten and JsonForceObjectArray call in a single pass

Example

dim json as c = <<%json%
[
   {
       "CustomerId" : "AMCE" ,
       "Contact" : {
          "Firstname" : "Sam" ,
          "Lastname" : "Clark"
       },
       "Address" : {
           "Street" : "123 Main Street" ,
           "City" : "Springfield"  , 
           "State" : "MI"
       },
       "ProductLines" : [ "Plastics" , "Cloth" ]
   }
]
%json%

dim out as c = extension::json::JsonObjFlattenAndForceObjArray(json,"__","category") 
? 
[
    {
        "CustomerId": "AMCE",
        "Contact__Firstname": "Sam",
        "Contact__Lastname": "Clark",
        "Address__Street": "123 Main Street",
        "Address__City": "Springfield",
        "Address__State": "MI",
        "ProductLines": [
            {
                "category": "Plastics"
            },
            {
                "category": "Cloth"
            }
        ]
    }
]